package com.mcp.converter.shared.util;

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

/**
 * 文件系统工具类
 *
 * @author zengxiong
 */
public class FileSystemUtils {
    private static final String MCP_DIR = "mcp";

    /**
     * 判断当前系统是否是Windows
     */
    public static boolean isWindows() {
        return System.getProperty("os.name").toLowerCase().contains("windows");
    }

    /**
     * 获取MCP目录路径
     */
    public static Path getMcpDirectory() {
        if (isWindows()) {
            return Paths.get("D:/" + MCP_DIR);
        } else {
            return Paths.get(System.getProperty("user.home"), MCP_DIR);
        }
    }

    /**
     * 确保MCP目录存在
     *
     * @return 创建的目录路径
     * @throws IOException 如果目录创建失败
     */
    public static Path ensureMcpDirectoryExists() throws IOException {
        Path dirPath = getMcpDirectory();
        if (!Files.exists(dirPath)) {
            return Files.createDirectories(dirPath);
        }
        return dirPath;
    }
}